package unq.equipos.dom;

import java.util.HashSet;
import java.util.List;
import java.util.Set;
import java.util.Vector;

import persistencia.Entidad;

public class Equipo implements Nombrable, Entidad {
	private int equipoId;
	private Tecnico tecnico;
	private Set<Jugador> jugadores;
	private String nombre;

	public Equipo (){}
	
	public Equipo(String nombre) {
		this.setJugadores(new HashSet<Jugador>());
		this.setNombre(nombre);
	}

	public Formacion armarFormacion() {
		return tecnico.armarFormacion(this);
	}

	public void agregarJugador(Jugador... jugadores) {
		for (Jugador jugador : jugadores) {
			this.getJugadores().add(jugador);
			jugador.setEquipo(this);
		}
	}

	// getters & setters
	public Set<Jugador> getJugadores() {
		return jugadores;
	}

	public void setJugadores(Set<Jugador> jugadores) {
		this.jugadores = jugadores;
	}

	public void setTecnico(Tecnico tecnico) {
		this.tecnico = tecnico;
	}

	@Override
	public void setId(int id) {
		this.equipoId = id;

	}

	@Override
	public int getId() {
		return this.equipoId;
	}

	public void setNombre(String nombre) {
		this.nombre = nombre;
	}

	public String getNombre() {
		return nombre;
	}
	
	public Tecnico getTecnico() {
		return tecnico;
	}
	
}